#!/usr/bin/env ruby
require 'optparse'
require 'pathname'

@help = <<~HELP
  个人扩展的管理 openSuse 软件源的工具。它包含若干个子工具，分别是：

      repos add           # 方便添加软件源的工具
      repos switch        # 方便切换软件源的工具

  '-h/--help' 选项打印本条帮助信息。如果想要查看子命令的帮助，在子命令下使用 '-h/--hellp' 选项。例如：`repos switch --help`.
HELP

ARGV.push('--help') if ARGV.empty?
begin
  OptionParser.new do |opts|
    opts.banner = @help
  end.order!
rescue OptionParser::ParseError => ex
  STDERR.puts ex.message
  exit 1
end

command = ARGV.shift
if command == 'switch'
  exec File.join(__dir__, 'switch.rb'), *ARGV
elsif command == 'add'
  exec File.join(__dir__, 'add.rb'), *ARGV
else
  STDERR.puts "Invalid command: #{command}"
  exit 2
end
